<?php

/**
 * Articulo form.
 *
 * @package    catalogo
 * @subpackage form
 * @author     Your name here
 * @version    SVN: $Id: sfDoctrineFormTemplate.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class BackendArticuloForm extends BaseArticuloForm
{
  public function configure()
  {    
    unset(
      $this['created_at'], $this['updated_at'], $this['visitas'], $this['token']
    );
    	
    $this->widgetSchema['categoria_id'] = new sfWidgetFormDoctrineChoice (array(
										'model'=>'Categoria', 
										'add_empty'=>'Selecciona una categoría'));
    $this->widgetSchema['tipo_id'] = new sfWidgetFormDoctrineChoice (array(
										'model'=>'TipoArticulo', 
										'add_empty'=>'Selecciona un tipo'));
    $this->widgetSchema['ubicacion_id'] = new sfWidgetFormDoctrineChoice (array(
										'model'=>'Ubicacion', 
										'add_empty'=>'Selecciona una ubicación'));
     
    $this->validatorSchema['categoria_id'] = new sfValidatorString(array(
				'required' => true));
    $this->validatorSchema['tipo_id'] = new sfValidatorString(array(
				'required' => true));
    $this->validatorSchema['ubicacion_id'] = new sfValidatorString(array(
				'required' => true));
    $this->validatorSchema['precio'] = new sfValidatorNumber(array(), array(
				'invalid' => '"%value%" no es un número.'));
    $this->validatorSchema['titulo'] = new sfValidatorString(array(
				'min_length' => 5, 
				'max_length' => 150), array(
				'min_length' => 'Este campo es muy corto. (5 caracteres min)', 
				'max_length' => 'Este campo es muy largo. (150 caracteres max)'));
    $this->validatorSchema['descripcion'] = new sfValidatorString(array(
				'min_length' => 5, 
				'max_length' => 1000), array(
				'min_length' => 'Este campo es muy corto. (5 caracteres min)', 
				'max_length' => 'Este campo es muy largo. (1000 caracteres max)'));
    $this->validatorSchema['forma_pago'] = new sfValidatorString(array(
				'min_length' => 4, 
				'max_length' => 50), array(
				'min_length' => 'Este campo es muy corto. (4 caracteres min)', 
				'max_length' => 'Este campo es muy largo. (50 caracteres max)'));  
        
    $subForm = new sfForm();
    $fotos = $this->getObject()->getPhotos();
    for ($i = 1; $i <= sfConfig::get('app_fotos_x_art'); $i++)
    {
    	if ($fotos[$i-1]){
    	  $fotoArticulo = $fotos[$i-1]; //si edita asocia las fotos anteriores
    	}

      $fotoArticulo->Articulo = $this->getObject();
 
      $form = new FotoArticuloForm($fotoArticulo);
 
      $subForm->embedForm("Foto ".$i, $form);
    }
    $this->embedForm('Fotos:', $subForm);    
  }
}
